#通过正则表达式获取网页中的图片链接
#通过requests库发送请求获取图片内容
import requests
import re
import os
post_url = r"https://tieba.baidu.com/p/9490338565"
headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36"
}

if __name__ == '__main__':
    # 发送请求获取网页内容
    response = requests.get(url=post_url, headers=headers)
    test = '<cc>.*?src="(.*?)".*?<cc>'
    img_src_list = re.findall(test, response.text, re.S)

    # 检查 tieba_images 文件夹是否存在，如果不存在则创建
    if not os.path.exists("tieba_images"):
        os.mkdir("tieba_images")

    # 遍历图片链接列表
    for index, img_src in enumerate(img_src_list):
        try:
            # 发送请求获取图片内容
            img_response = requests.get(url=img_src, headers=headers)
            if img_response.status_code == 200:
                # 生成图片文件名
                filename = os.path.join("tieba_images", f"image_{index}.jpg")
                # 以二进制写入模式打开文件
                with open(filename, 'wb') as file:
                    # 将图片数据写入文件
                    file.write(img_response.content)
                print(f"图片已保存为 {filename}")
            else:
                print(f"请求图片失败，状态码: {img_response.status_code}，链接: {img_src}")
        except Exception as e:
            print(f"处理图片时出现错误: {e}，链接: {img_src}")

    print(len(img_src_list))






















